Multichannel time encoding and decoding of a signal

ABSTRACT

Analog signals can be fully encoded as an asynchronous time sequence generated by a time encoding machine. With knowledge of the parameters of the time encoding machine, the asynchronous time sequence can be decoded using a non-linear time decoding machine. Such a system can be extended into an encoder/decoder in which a signal is processed in M separate channels. An input signal is applied to the encoder where the signal is provided to an M channel encoder circuit including a filter bank having a total bandwidth partitioned among M adjacent or overlapping filters. Each of the M filters are coupled to a corresponding one of M time encoding machines. The encoder output is represented by M sets of time encoded trigger values. The input signal can be recovered from the M sets of time encoded trigger values by applying the trigger signals to a corresponding M channel decoder which includes M TDMs and filters. The TDMs recover the continuous signal from each channel. The filter outputs xm are then amplitude scaled sm and are combined to recover the input signal. By partitioning the signal bandwidth into M channels, the average pulse rate from each TDM is substantially reduced.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 11/285,457, filed on Nov. 22, 2005, now U.S. Pat. No. 7,336,210 which is a continuation of International Application Ser. No. PCT/US04/016957, filed May 27, 2004, published Dec. 23, 2004, entitled “MULTICHANNEL TIME ENCODING AND DECODING OF A SIGNAL,” which claims priority to U.S. Provisional Application Ser. No. 60/473,566, filed May 27, 2003, each of which are incorporated by reference in their entireties herein, and from which priority is claimed.

FIELD OF THE INVENTION

The present invention relates generally to signal processing and more particularly relates to circuits and methods for recovering a signal from the output of a time encoding machine which maps amplitude information into an asynchronous time sequence.

BACKGROUND OF THE INVENTION

Most signals in the world in which we live are analog, i.e., cover a continuous range of amplitude values. However, most computer systems for processing these signals are binary digital systems. Generally, synchronous analog-to-digital (A/D) converters are used to capture analog signals and present a digital approximation of the input signal to a computer processor. That is, at precise moments in time synchronized to a system clock, the amplitude of the signal of interest is captured as a digital value. When sampling the amplitude of an analog signal, each bit in the digital representation of the signal represents an increment of voltage, which defines the resolution of the A/D converter. Analog-to-digital conversion is used in numerous applications, such as communications where a signal to be communicated may be converted from an analog signal, such as voice, to a digital signal prior to transport along a transmission line. Applying traditional sampling theory, a band limited signal can be represented with a quantifiable error by sampling the analog signal at a sampling rate at or above what is commonly referred to as the Nyquist sampling rate.

While traditional A/D conversion techniques have been effective, techniques based on amplitude sampling have limitations. For example, it has been a continuing trend in electronic circuit design to reduce the available operating voltage provided to integrated circuit devices. In this regard, over the last decade, power supply voltages have decreased from five volts to three volts and there remains a desire to reduce this further, such as to one volt or less. While digital signals can be readily processed at the lower supply voltages, traditional synchronous sampling of the amplitude of a signal becomes more difficult as the available power supply voltage is reduced and each bit in the A/D or D/A converter reflects a substantially lower voltage increment. Thus, there remains a need to develop circuits and methods for performing high resolution A/D and D/A conversion using substantially lower power supply voltages which will be desired in future designs.

In contrast to sampling a signal using synchronous A/D converters, circuits are known for performing asynchronous time encoding of a signal. One such circuit, referred to as an asynchronous sigma delta modulator (ASDM) is disclosed in U.S. Pat. No. 6,087,968 to Roza (“the '968 patent”). An example of such an ASDM is illustrated herein in FIG. 1. The ASDM generates an asynchronous duty cycle modulated square wave at output z(t) which is representative of the input signal, x(t). In the '968 patent, an ASDM is used to form an analog-to-digital converter by providing the output of the ASDM to a sampler and a linear decimating filter which is sampled at a rate above the bandwidth of the input signal. A problem with this approach is that the ASDM introduces non-linearities in z(t) which cannot be recovered using a linear decimation filter. As a result, the degree of signal recovery is limited. Another shortcoming with this approach is that the output of the ASDM must be over sampled by a high frequency clock. As the bandwidth of the input signal increases, the clock frequency also increases. Even if the desired clock rate can be achieved, such high frequency clocks demand significant power consumption.

While the '968 patent discloses the use of an ASDM to time encode an analog signal, certain characteristics of the ASDM circuit were not previously appreciated. For example, the '968 patent does not disclose a method of designing the ASDM in order to have the ASDM output signal be fully invertible, i.e., allow for theoretically perfect recovery of the input signal. Further, the '968 patent does not disclose that the ASDM is a non-linear system and that a non-linear recovery method is required to fully take advantage of this circuit.

In WO 2004/039021 the present inventors describe systems and methods for asynchronous time encoding an analog signal and decoding the time encoded signal with perfect recovery or recovery with an arbitrary error. In this international patent publication, such systems are referred to as time encoding machines (TEM) and time decoding machines (TDM). One form of TEM is referred to as an integrate and fire neuron. Since a number of sensory systems, such as the retina and cochlea, have previously been modeled as a bank of overlapping filters fed from a common signal with each filter output feeding an integrate and fire neuron, it would be advantageous to extend the teachings of WO 2004/039021 to systems and methods in which filterbanks and multiple processing paths are employed to further realize the advantages of the use of time encoding machines and time decoding machines.

OBJECTS AND SUMMARY

It is an object of the present invention to provide circuits and methods to encode and decode a band limited signal using asynchronous processes.

It is an object of the present invention to provide circuits and methods to encode and decode a band limited signal using multichannel processing of asynchronous processes.

It is another object of the present invention to provide non-linear operations for recovering an input signal from a multichannel output of an M channel encoder using a plurality of time encoding machines.

It is an object of the present invention to reduce the average spike rate from the output of a time encoding machine by employing bandwidth partitioning and a plurality of time encoding machines operating in a parallel manner.

In accordance with the present invention, a multichannel TEM encoder circuit is provided which includes a filter bank having an input bandwidth and is formed with a number (M) of filter elements. The M filter elements are selected such that the response of the M filters are at least adjacent and collectively at least fully span the bandwidth of the filter bank. The encoder circuit also includes a number (M) of time encoding machines (TEMs), with each of the M TEMs being operatively coupled to a corresponding one of the M filter elements.

A decoder circuit for decoding a signal encoded by a multichannel TEM encoder is also provided. The multichannel TEM encoder includes a bank of M time decoding machines (TDMs), with each of the M TDMs having an input for receiving a set of asynchronous trigger values representing at least a portion of a signal to be decoded. A bank of M filter elements is provided with each of the M filter elements being operatively coupled to a corresponding one of the M TDMs. The bank of M TDMs and M filter elements having an overall response selected to at least substantially invert the encoding process of the multichannel TEM encoder used to encode the signal.

Also in accordance with the present invention, a method is provided for recovering an input signal x(t) from the output signal of a Multichannel Time Encoding Machine (TEM) encoder which provides a set of M binary asynchronous time sequences in response to a bounded input signal x(t). The method includes receiving the asynchronous time sequences from the M TEMs of the encoder and measuring the transition times, such as the time of zero crossings, of the TEM output signals. From each set of TEM transition times, a corresponding set of weighted impulse functions is generated. The generation of weighted impulse functions can be computed, such as by applying an algorithm that resolves a non-linear recursive relationship or matrix form non-linear relationship. The input signal can be recovered by applying the set of weighted impulse functions to an impulse response filter. If the transition times are exactly known, the Multichannel TEM encoder is fully invertible and the input signal can be exactly recovered by the present methods. If the transition times are quantized, the quantization level determines the accuracy of recovery in a manner that is analogous to conventional amplitude sampling.

In one embodiment, the weighted impulse functions are a set of weighted Dirac delta functions which are centered in the time interval of successive zero crossings of the TEM outputs. The weighting value for each impulse function is related to the design parameters of the TEMs and the transition times. For example, the weighted impulse functions can have weighting value coefficients c_(k) which can be expressed in matrix form as a column vector, c: c=(G+λ*I)⁺ q

where λ is a constant, I is an identity matrix and q is a column vector and

∫_(tk)^(t_(k + 1))x(u) 𝕕u = (−1)^(k)[−b(t_(k + 1) − t_(k)) + 2 κ δ] q = [∫_(t_(k))^(t_(k + 1))x(u) 𝕕u]  and  G = [∫_(t_(l))^(t_(l + 1))g(u − s_(k)) 𝕕u]  and  where  G⁺ denotes the pseudo-inverse of matrix G. The use of the constant λ allows for a smoother estimation in the presence of noise. When λ=0, the system is noise free and the recovery is ideal. The input signal x(t) can be recovered from the vector c by passing a train of impulse functions weighted by this vector through an ideal impulse response filter. The impulse response filter can be described as g(t)=sin(Ωt)/nt. The recovery of the input signal can then be expressed in matrix form as: x(t)=gc, where g is a row vector, g=[g(t−s_(k))]^(T).

The TEMs can take on many forms so long as the transition times from the TEM outputs relate to the input signal in an invertible manner. Examples of TEM circuits include an asynchronous sigma delta modulator circuit and an integrate and fire neuron circuit.

The methods of the present invention can be embodied in a time decoding machine (TDM) circuit. The TDM will generally be formed using a digital microprocessor or digital signal processing integrated circuit which has been programmed to carry out the methods of the present invention.

BRIEF DESCRIPTION OF THE DRAWING

Further objects, features and advantages of the invention will become apparent from the following detailed description taken in conjunction with the accompanying figures showing illustrative embodiments of the invention, in which:

FIG. 1 is a block diagram of a known circuit embodiment of an asynchronous sigma delta modulator (ASDM), which can be used as an embodiment of a time encoding machine (TEM) in the present invention;

FIG. 2A is a simplified block diagram illustrating a system in accordance with the present invention including a time encoding machine (TEM) for asynchronous time encoding of an input signal and a time decoding machine for subsequently recovering the input signal from the TEM output signal;

FIGS. 2B and 2C pictorially represent the operation of the ASDM of FIG. 1 operating as a time encoding machine where FIG. 2B is a graphical representation of an analog input signal, x(t), to the system of FIG. 2A and FIG. 2C is a graphical representation of the time encoded signal z(t) from the time encoding machine;

FIGS. 3A and 3B are timing diagrams illustrating the operation of a TEM for a DC input signal; and

FIG. 4 is a block diagram of a circuit including a TEM and one embodiment of a quantizer for the TEM output signal.

FIG. 5 is a simplified flow chart illustrating the operations of the time decoding machine (TDM) of the present invention;

FIG. 6 is a pictorial representation of the operation of the time decoding machine;

FIGS. 7A and 7B are timing diagrams illustrating the operation of a TEM in response to a time varying input signal, x(t);

FIG. 8 is a graph illustrating recovery error versus 6 for a compensated recovery algorithm in accordance with the present invention.

FIG. 9 is a block diagram of an alternate embodiment of a TEM circuit using an integrate and fire neuron circuit to time encode an input signal;

FIG. 10 is a graph illustrating an example of the output signal from the TEM of FIG. 9;

FIG. 11 is a block diagram of a signal processing system providing multichannel processing using a bank of M filters coupled to M channels of corresponding TEMs to encode an analog signal with reduced bandwidth processing; and

FIG. 12 is a block diagram of a signal processing system to decode a multichannel time encoded signal using a bank of M TDMs coupled to M channels of filters to a signal encoded in accordance with the circuit of FIG. 11.

Throughout the figures, the same reference numerals and characters, unless otherwise stated, are used to denote like features, elements, components or portions of the illustrated embodiments. Moreover, while the subject invention will now be described in detail with reference to the figures, it is done so in connection with the illustrative embodiments. It is intended that changes and modifications can be made to the described embodiments without departing from the true scope and spirit of the subject invention as defined by the appended claims.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The present invention uses time encoding to digitize an analog signal and also uses appropriate non-linear decoding methods for subsequent recovery of the input signal. Thus, the systems and methods described apply to analog-to-digital (A/D) conversion and digital-to-analog (D/A) conversion using time encoding of a signal. In particular, the current invention employs a multichannel encoding and decoding approach which provides reduced average trigger times from each of the time encoding machines (TEM) used in the signal encoding process.

In the present application, the operation and implementation of time encoding machines (TEM) and time decoding machines (TDM) are provided. As used herein, a TEM is a circuit or process which receives a bounded input signal and generates an asynchronous set of binary transitions, the timing of which are related to the amplitude of the input signal. More generally, a TEM is a circuit or process which maps amplitude information into time information. A time decoding machine is a circuit or process which is responsive to transition time data from a TEM and can process the transition time data to recover the input signal with arbitrary accuracy.

In the description which follows, the general theory and implementation of time encoding machines (TEM) and time decoding machines (TDM) is presented in connection with the description of FIGS. 1-10. FIGS. 11 and 12, and the description associated therewith, describe the use of TEM and TDM circuits in a multichannel processing approach which further reduces the average rate of transitions at the output of the TEM (average spike rate). Reducing the average spike rate in an asynchronous circuit such as the TEM provides similar advantages to that observed by reducing the clock rate in a synchronous circuit.

The block diagram of FIG. 2A provides a simplified description of the present invention. A band limited, amplitude limited signal x(t), as shown in FIG. 2B, is applied to the input of a Time Encoding Machine (TEM) 205 which generates a binary, asynchronous output z(t), illustrated in FIG. 2C. The TEM output signal z(t) is an asynchronous binary output whose zero crossings (t₀, t₁, . . . t_(k)) are related to the amplitude of the input signal. It is now understood in connection with the present invention that the signal z(t) relates to the input signal x(t) in a non-linear fashion. By using the inverse of the non-linear relationship in a decoding algorithm in a Time Decoding Machine (TDM) 210, the input signal, x(t), can be recovered from knowledge of the zero crossings in z(t). If the zero crossings in z(t) are known precisely, then perfect recovery of the input signal is possible. If there is error attributable to the measurement of the zero crossings, the error in the recovery of x(t) is equivalent to magnitude of the error in the recovery of a signal using traditional amplitude sampling. That is, for the same number of bits used in sampling the signal, the current time encoding methods yield comparable results to known amplitude sampling systems.

FIG. 1 is a block diagram of a known Asynchronous Sigma Delta Modulator (ASDM) circuit which is suitable for use in one embodiment of TEM 205. The circuit of FIG. 1 generates a two-state output signal (b, −b) whose zero crossings are asynchronously determined by the amplitude of the input signal x(t) in combination with design parameters of the circuit. Because the timing of the zero crossings is asynchronously determined by the amplitude of the input signal, the ASDM can be viewed as a form of time encoding machine (TEM). If the input signal x(t) to the TEM is a band limited signal, then the system is invertible and the input signal, x(t), can be recovered from the TEM output signal, z(t), using an appropriate recovery process in the TDM. If the transition times are known exactly, the input signal can be fully recovered by the TDM. Accordingly, by knowing the expected maximum bandwidth of an input signal, the parameters of the TEM can be designed accordingly.

The underlying operating principle of a TEM can be understood by reference to FIGS. 1, 3A and 3B. In order to realize complete recovery, it is expected that the input signal x(t) is bounded in both bandwidth, Ω, and amplitude, c. The input signal, x(t), is applied to an adder 105 which is coupled to the input of an integrator circuit 110. The integrator circuit 110 has an integration time constant, κ. The output of the integrator circuit 110 is coupled to the input of a non-inverting Schmitt trigger 115. The Schmitt trigger has two design parameters, the output voltage swing (b, −b) and the hysteresis value, δ. The output of the Schmitt trigger 115 provides a TEM output signal, z(t). The output of the Schmitt trigger 115 is also fed back to an inverting input to the adder 105. As a result, the bounded input signal x(t), |x(t)|≦c<b, is biased by a constant amount ±b before being applied to the integrator 110. This bias guarantees that the output of the integrator y(t) is either a positive-increasing or negative-decreasing function of time.

Referring to FIGS. 3A and 3B, in the steady state, the TEM output signal z(t) can assume one of two states. In the first state, the TEM is in the state z(t)=−b and the input to the Schmitt trigger increases from −δ to δ. When the output of the integrator circuit 110 reaches the maximum value δ, a transition of the output z(t) from −b to b is triggered and the feedback signal applied to adder 105 becomes negative. In the second steady state of operation, the TEM is in the state z(t)=b and the integrator output steadily decreases from δ to −δ. When the maximum negative value −δ is reached, z(t) will reverse to −b. Thus, a transition of the output of the TEM from −b to b or from b to −b takes place each time the integrator output reaches the triggering threshold δ or −δ. The timing of these transitions, which result in the zero crossings, t₀ . . . t_(k), depends on both the amplitude of the input signal x(t) and the design parameters of the TEM, such as the hysteresis of the Schmitt trigger, δ. Thus, the TEM is effectively mapping amplitude information into timing information using a signal dependent sampling mechanism.

The Schmitt trigger 115 can be characterized by two design parameters: the output voltage swing (b, −b) and the hysteresis value, δ. In order for the ASDM of FIG. 1 to operate as an invertible TEM, the amplitude of the input signal c must be less than output voltage swing of the Schmitt trigger, i.e., |c|<b. It has also been found that to fully recover the input signal from the TEM output signal, the hysteresis value, δ, must be less than the period of the Nyquist sampling rate. This can be expressed as: δ<(π/Ω)((b−c)/κ), where Ω represents the bandwidth of the input signal x(t), κ represents the integration constant of the TEM, and c represents the maximum amplitude of the input signal. Thus, the parameters of the TEM are to be set based on the expected limits of the input signal.

The set of trigger times t_(k) which comprise the output of the TEM can be expressed by the recursive equation:

$\begin{matrix} {{\int_{tk}^{t_{k + 1}}{{x(u)}\ {\mathbb{d}u}}} = {{\left( {- 1} \right)^{k}\left\lbrack {{- {b\left( {t_{k + 1} - t_{k}} \right)}} + {2\;\kappa\;\delta}} \right\rbrack}.}} & \left( {{Eq}.\mspace{14mu} 1} \right) \end{matrix}$ for all integer values of k, i.e., k, kεZ. where κ is the integration constant of the TEM, δ is the hysteresis value of the Schmitt trigger in the TEM and b is the amplitude output voltage swing of the TEM output.

By dividing by b on both sides of equation (2), the output can be normalized and can be expressed as:

$\begin{matrix} {{\int_{t_{k}}^{t_{k + 1}}{\frac{x(u)}{b}\ {\mathbb{d}u}}} = {{\left( {- 1} \right)^{k}\left\lbrack {{- \left( {t_{k + 1 -}t_{k}} \right)} + \frac{2\;\kappa\;\delta}{b}} \right\rbrack}.}} & \left( {{Eq}.\mspace{14mu} 2} \right) \end{matrix}$ for all k, kεZ, i.e., k is an element of the set of all integer numbers. Therefore, the increasing time sequence (t_(k)), kεZ, can be generated by an equivalent circuit with integration constant κ=1 and a Schmidt trigger with parameters κδ/b and 1. In what follows, without any loss of generality, this simplified version of the TEM will be used. The input to the TEM is a bounded function x(t) with |x(t)|≦c<1 for all t, tεR, i.e., t is an element of the set of all real numbers. The output of the TEM is function z taking two values z: R→{−1,1} for all t, tεR, with transition times t_(k), kεZ, generated by the recursive equation

$\begin{matrix} {{{\int_{t_{k}}^{t_{k + 1}}{{x(u)}\ {\mathbb{d}u}}} = {\left( {- 1} \right)^{k}\left\lbrack {{- \left( {t_{k + 1 -}t_{k}} \right)} + \delta} \right\rbrack}},} & \left( {{Eq}.\mspace{14mu} 3} \right) \end{matrix}$ for all k, kεZ. This equation illustrates the mapping of the amplitude information of the signal x(t), tεR, into the time sequence (t_(k)), kεZ.

In the description that follows, the operation of the TEM is evaluated for the case where the input signal is a constant DC value. For this example, it is assumed that the TEM takes the form substantially presented in FIG. 1 and consists of an integrator with integrator constant κ=1 and Schmitt trigger with parameters δ from −δ/2 to δ/2 and b=1. In this case, x(t)=c (not necessarily positive), where c denotes a given DC level. If c<−1 or c>1 the output of the integrator would become unbounded, and thus the overall TEM would become unstable. This condition might lead to information loss because the output z (t) cannot track the input x (t). By bounding the input amplitude such that |c|<1, the TEM is stable and the sequence of transition times reduces to the simple recursion:

$\begin{matrix} {{t_{k + 1} = {t_{k} + \frac{\delta}{1 + {\left( {- 1} \right)^{k}c}}}},} & \left( {{Eq}.\mspace{14mu} 4} \right) \end{matrix}$ and, therefore, t_(k+1)>t_(k), kεZ.

The integrator output, y (t), and the TEM output, z (t) for the case where the input signal is a constant value, are illustrated in the timing diagrams of FIGS. 3A and 3B, respectively. Referring to FIGS. 3A and 3B, it is apparent that both the integrator output and TEM output, y(t) and z(t), respectively, are periodic signals with a period T. The period T can be expressed as:

$\begin{matrix} {T = {{t_{k + 2} - t_{k}} = {\frac{2\;\delta}{1 - c^{2}}.}}} & \left( {{Eq}.\mspace{14mu} 5} \right) \end{matrix}$ for all k, kεZ.

The mean value (the 0-th order Fourier-series coefficient) of z(t) can be expressed as:

$\begin{matrix} {{\frac{\left( {- 1} \right)^{k}\left\lbrack {{- \left( {t_{k + 1} - t_{k}} \right)} + \left( {t_{k + 2} - t_{k + 1}} \right)} \right\rbrack}{T} = c},} & \left( {{Eq}.\mspace{14mu} 6} \right) \end{matrix}$ Equation 6 illustrates that the input signal and the output signal from the TEM have the same average value.

The transition times from the TEM output can be measured using conventional circuits and methods. FIG. 4 is one example of a circuit for quantizing and measuring the transition times t_(K) from the output of a TEM. The TEM 205 has an output which is coupled to a strobe input of a counter circuit 405. The counter circuit 405 is also coupled to a clock circuit 410 which increments the counter value on each clock pulse. Thus the counter circuit 405 maintains a running count of clock pulses. On each occurrence of t_(K), the current counter value in counter circuit 405 is strobed to an N-bit output bus of the counter circuit 405. The counter output can then be provided to a digital processor 410 for storage and processing in accordance with the methods described herein. The counter values from the counter circuit 405 are transferred to the processor 410 at a rate equal to or greater than the Nyquist frequency of the input signal. Thus, the timing of the zero crossings are being quantized with a definable error based on the number of bits of resolution in the counter circuit 405. The processor receives the quantized values of t_(k) as an N bit word from the counter circuit 405 on each occurrence of t_(k).

The operation of the Time Decoding Machine (TDM) 210 will be described in connection with the flow chart of FIG. 5 and pictorial diagram of FIG. 6. FIG. 5 is a simplified flow diagram illustrating the operation of the TDM 210. As noted above, the TEM 205 operates by generating a set of signal dependent transition times (Step 500). The transition times are discrete real values and can be designated as t_(K)=[t₀, t₁, t₂, . . . , t_(K)]. From the set of signal dependent transition times, t_(K), the input signal x(t) can be represented as a set of weighted Dirac delta functions, S_(k). Each of the weighted delta functions has a time value determined by the center of each successive time interval (t_(K), t_(K+1)) and having a weighting value, c_(k), associated therewith. For example, referring to FIG. 6, S1 in 630 has a time value at the median value between t₀ and t₁ which are illustrated in 620 (Step 510).

The values of the weighting coefficients can be determined from the transition times, t_(k), and the Schmitt trigger hysteresis value, δ (step 520). The coefficients c_(k) can be expressed in matrix form as a column vector, c: c=(G+λ*I)⁺ q  (Eq. 7)

where λ is a constant, I is an identity matrix and q is a column vector and

∫_(tk  )^(t_(k + 1))x(u)𝕕u = (−1)^(k)[−b(t_(k + 1) − t_(k)) + 2 κ δ]   q = [∫_(t_(k))^(t_(k + 1))x(u)𝕕u]  and  G = [∫_(t_(l))^(t_(l + 1))g(u − s_(k)) 𝕕u]  and  where  G⁺ denotes the pseudo-inverse of matrix G. The use of the constant λ allows for a smoother estimation in the presence of noise. When λ=0, the system is noise free and the recovery is ideal.

The input signal x(t) can be recovered from the vector c by passing this vector through an ideal impulse response filter (Step 530). The impulse response filter can be described as g(t)=sin(Ωt)/πt. Such a filter can be formed as a digital filter using suitable programming of processor 420 (FIG. 4). It will be appreciated that other embodiments, such as analog filters and other digital filter embodiments are also contemplated by the present invention. The recovery of the input signal can be expressed in matrix form as: x(t)=gc, where g is a row vector, g=[g(t−s _(k))]^(T)  (Eq. 8)

The method steps described in connection with the flow diagram of FIG. 5 are represented pictorially in FIG. 6. An input signal x(t) is applied to the input of a TEM 610, such as a properly designed ASDM as illustrated in FIG. 1 and described above. The TEM 610 provides an output comprising signal dependent asynchronous timing data derived from x(t) 620. Based on the value of the hysteresis of the TEM, δ, the time sequence of z(t) is converted into a matrix of weighted Dirac delta functions, S_(k) 630. The weighted Dirac delta functions have a time value centered between consecutive zero crossings t_(k). The weighting value is expressed above, c=(G+λ*I)⁺. The sequence S_(k) 630 can then be applied to an ideal impulse response filter g (step 640) which recovers the original signal, x(t).

In the method described above, perfect signal recovery can be achieved with knowledge of the signal bandwidth, upper bound on the signal amplitude with respect to the output swing of the Schmitt trigger and the hysteresis value of the Schmitt trigger, δ, and exact knowledge of the transition times, t_(k). However, in many practical cases, errors are attributable in determining the values of the trigger times in z(t) as well as in determining the exact value of the hysteresis.

The error associated with the measurement of the trigger times results from quantization of the timing information such that the transition times are not exactly known, i.e., the times are known within the quantization level used. It can be shown that the resulting error from time encoding is comparable to that of amplitude sampling, when the same number of bits of resolution are used in each case.

A reasonable comparison between the effects of amplitude and time quantization can be established if we assume that the quantized amplitudes and quantized trigger times are transmitted at the same bitrate. Since x(s_(k)) and T_(k) are associated with the trigger times t_(k) and t_(k+1), the same transmission bitrate is achieved if the x(s_(k))'s and the T_(k)'s are represented by the same number of bits N. With −c≦x≦c, the amplitude quantization step amounts to ε=2c/2^(N).

For time encoding T_(min)=min_(κεZ)T_(k)≦T_(K)≦max_(kεZ)T_(k)=T_(max) or equivalently 0≦T_(k)−T_(min)≦T_(max)−T_(min). Therefore, if T_(min) is exactly known, then only measuring T_(k)−T_(min), kεZ, in the range (0, T_(max)−T_(min)) is needed. Hence:

$\begin{matrix} {\Delta = {\frac{T_{\max} - T_{\min}}{2^{N}} = {{\frac{1}{2^{N}}\left( {\frac{\delta}{1 - c} - \frac{\delta}{1 + c}} \right)} = \frac{\delta\; ɛ}{1 - c^{2}}}}} & \left( {{Eq}.\mspace{14mu} 9} \right) \end{matrix}$ where Δ is the quantization step of the time sequence. Equation 9 illustrates how the quantization step of the time sequence is related to the amplitude quantization step.

The hysteresis value δ is often determined by analog components in the TEM, such as resistors and capacitors which exhibit a base line tolerance as well as variations over temperature, time and the like. The error that is associated with variations in the exact value of δ can be substantially eliminated by the use of a compensation method that is described below.

In the case where the TEM is embodied as an ASDM, such as illustrated in FIG. 1, following each transition of z(t), the polarity of the signal changes. This is evident from the equations for calculating t_(k), such as Equation 3, which includes a term (−1)^(k) which reflects this sign change on each transition, k. Since Equation 3 also includes 6 for each instance of t_(k), it will be appreciated that by evaluating the signal over a window spanning two consecutive instances of t_(k), the δ term will be positive in one case and negative in the next, thereby canceling the effect of any variation in δ over this window. The principle behind the δ compensated algorithm can be described as follows:

$\begin{matrix} {{h = {\frac{1}{2}\left\lbrack {g\left( {t - t_{k + 1}} \right)} \right\rbrack}^{T}},{q = {\left\lbrack {\int_{t_{k}}^{t_{k + 2}}{{x(u)}\ {\mathbb{d}u}}} \right\rbrack\mspace{14mu}{and}}}} \\ {H = {{\frac{1}{2}\left\lbrack {\int_{t_{l\;}}^{t_{l + 2}}{{g\left( {t - t_{K + 1}} \right)}\ {\mathbb{d}u}}} \right\rbrack}.}} \end{matrix}$

The band limited signal x can be perfectly recovered from its associated trigger times (t_(k)), kεZ, as

$\begin{matrix} {{x(t)} = {\begin{matrix} {\lim\;{x_{l}(t)}} \\ \left. l\rightarrow\infty \right. \end{matrix}^{\;} = {{hH}^{+}{q.}}}} & \left( {{Eq}.\mspace{14mu} 10} \right) \end{matrix}$ where H⁺ denotes the pseudo-inverse of H. Furthermore, x _(l)(t)=hP _(l) q, where P_(l) is given by

$P_{l} = {\sum\limits_{k = 0}^{l}\;{\left( {I - H} \right)^{k}.}}$ More generally, by defining a matrix B with ones on two diagonals:

$B = \begin{matrix} ⋰ & \; & \; & \; & \; & \; \\ {\ldots 1} & 1 & 0 & 0 & 0 & {0\ldots} \\ {\ldots 0} & 1 & 1 & 0 & 0 & {0\ldots} \\ {\ldots 0} & 0 & 1 & 1 & 0 & {0\ldots} \\ {\ldots 0} & 0 & 0 & 1 & 1 & {0\ldots} \\ \; & \; & \; & \; & \; & ⋰ \end{matrix}$ the input signal recovery algorithm can be expressed: x(t)=g ^(T)(t)[(B ⁻¹)(BG(B ⁻¹)^(T))⁺ [Bq]  (Eq. 11) The two diagonal row B matrix illustrated above is but one form of processing which can be used. It will be appreciated that other general expressions of this matrix can also be applied.

The compensation δ-insensitive recovery algorithm achieves perfect recovery. Simulation results for the δ-sensitive and δ-insensitive recovery algorithms are shown in FIG. 8, with graph lines denoted by stars and circles, respectively.

The δ-insensitive recovery algorithm recognizes that in two consecutive time periods of t_(k), the period of each cycle is dependent on δ and the output changes polarity from b to −b or vice versa. By looking at the output z(t) over two consecutive time periods, i.e., t_(n), t_(n+2), the error in the recovered version of x(t) attributable to δ can effectively be eliminated.

FIG. 9 illustrates an alternate embodiment of a TEM. The circuit of FIG. 9 can be described as an integrate and fire neuron with an absolute refractory period, Δ. The TEM of FIG. 9 includes an adder 905 to which an input signal x(t) is applied. The other terminal of the adder circuit 905 is coupled to a fixed bias voltage, b. The adder 905 is coupled to the input of an integrate and dump circuit 910. The integrate and dump circuit 910 integrates the input signal with an integration constant of κ until a dump or reset signal is received on input 915. The output of the integrator is applied to a threshold detector 920 which has an output which is zero until the input signal exceeds the threshold level, δ. When the input voltage to the threshold detector 920 exceeds the threshold level value the output transitions to a logic 1. The output of the threshold detector 920 is coupled to the dump input 915 of the integrate and dump circuit 910. A small time delay element τ (not shown) may be included in this circuit path to provide a more defined pulse at the threshold detector output, which will generate the transition times t_(k). The integrator constant κ, the threshold δ, the bias b in FIG. 9 are strictly positive real numbers; x(t), tεR, is a signal of finite energy on R that models the input stimulus to the TEM. Furthermore, x is bounded, |x(t)|≦c<b, and band limited to [−Ω,Ω]. The output of the integrator in a small neighborhood of t_(O)+Δ, t>t_(O)+Δ is given by:

$\begin{matrix} {{y(t)} = {{y\left( {t_{o} + \Delta} \right)} + {\frac{1}{k_{t_{0}}}{\int_{+ \Delta}^{t}{\left\lbrack {{x(u)} + b} \right\rbrack\ {{\mathbb{d}u}.}}}}}} & \left( {{Eq}.\mspace{14mu} 12} \right) \end{matrix}$

The term Δ represents the absolute refractory period of the circuit, which is a small but finite time period between the time the integrator resets and the time the integrator begins its next integration period. The absolute refractory period alters the transfer function of the integrator from h(t)=1 for t≧0 and h(t)=0 for all other t, to h(t)=1 for t≧Δ and h(t)=0 for all other t. Due to the bias signal b, the integrator output y=y(t) is a continuously increasing function. The output of the TEM is a time sequence (t_(k)), kεZ.

The output of the TEM of FIG. 9 is a strictly increasing set of trigger times (t_(k)), kεZ., that satisfy the recursive equation

$\begin{matrix} {{{\int_{{tk} + \Delta}^{{tk} + 1}{{x(u)}\ {\mathbb{d}u}}} = {{- {b\left( {t_{K + 1} - t_{K} - \Delta} \right)}} + {\kappa\;\delta}}},} & \left( {{Eq}.\mspace{14mu} 13} \right) \end{matrix}$ for all k, kεZ. For all input stimuli x=x(t), tεR, with |x(t)|≦c<b, the distance between consecutive trigger times t_(k) and t_(k+1) is given by:

$\begin{matrix} {{\frac{\kappa\;\delta}{b + c} + \Delta} \leq {t_{k + 1} - t_{k}} \leq {\frac{\kappa\;\delta}{b + c} + \Delta}} & \left( {{Eq}.\mspace{14mu} 14} \right) \end{matrix}$ for all k, kεZ.

The circuit of FIG. 9 can be generalized further by considering the integrator circuit to be a non-ideal integrator. If the capacitor in the integrator circuit is considered leaky, i.e., in parallel with a finite resistance, the leaky integrator resembles a more general low pass filter response. The leaky integrate-and-fire circuit can be defined by the transfer function: h(t)=(1/κ)e ^(−t) t≧0; h(t)=0 otherwise.

The embodiments described above demonstrate the application of a TEM and TDM to encode and decode signals in a single channel. In many signal processing applications, such as medical engineering applications including hearing aides, MRI and the like, it is often desirable to partition a relevant signal bandwidth into a number (M) of adjacent or overlapping subbands or channels. A multichannel processing approach provides several advantages, including the ability to tailor the response characteristics within the overall system bandwidth and the ability to reduce the clock speed or average spike rate of any associated circuitry in each of the M channels. Multichannel processing has been used previously in connection with traditional filtering and synchronous amplitude sampled systems. It has now been determined that such an approach is also well suited to the use of TEMs and TDMs to encode and decode the signals in each of the m channels. An example of such a system is provided in FIGS. 11 and 12.

FIG. 11 is a block diagram illustrating an encoder system using a multichannel signal processing circuit in accordance with an embodiment of the invention wherein an input signal f(t) is applied to an input 1110 of a filter bank 1105. The filter bank 1110 includes M filter elements 1120, 1130, 1140. The M filter elements in the filter bank 1105 are coupled to a corresponding TEM 1150, 1160, 1170. The TEM's 1150, 1160, 1170 can take on various forms, such as the ASDM (FIG. 1) and integrate and fire neuron circuits (FIG. 9) described above. The circuit of FIG. 11 has now been found to be invertible if the M filter elements of the filter bank 1105 are selected such that, overall, no signal frequency is lost. Thus, it is preferable in the selection of the parameters for the M filters for the center frequency and bandwidth of the M filters to be selected such that overall bandwidth of f(t) is partitioned with the response of the filters 1120, 1130, 1140 being at least adjacent, and more preferably overlapping. The individual filter elements should be selected to be of a form which is invertible. If the filters are selected such that the overall response of the circuit of FIG. 11 is invertible, the multichannel time decoding subsystem of FIG. 12 can be employed to receive the M channels of time encoded trigger information (t_(k) ^(m),δ_(m)(t_(k) ^(m))) kεZ, and recover the input signal f(t). Since the average spike rate (i.e., the average rate of occurrence of the output pulses t_(k)) of the TEM's is related to the bandwidth of signal being processed, by partitioning the total bandwidth over M channels, the average spike rate of each TEM is reduced accordingly. The spike rate reduction will be approximately determined by the ratio of total bandwidth of the filter bank 1105 to the individual filter bandwidth in each of the M filter elements. Indeed, through the selection of the number of processing channels M, the average spike rate of the trigger output pulses from the TEM's can be made arbitrarily small. While the use of the TEM over traditional sampling techniques already provides substantial benefits, the multichannel processing approach of FIGS. 11 and 12 is particularly advantageous in reducing the average spike rate in a particular system.

Referring to FIG. 11, any number of filter design methodologies can be used to implement the filter bank 1105 and the M filter elements 1135, 1140, 1145, such as a Gabor transform or wavelet transform. Filter design using these well known transforms is well understood to those of ordinary skill in the art and is described in references such as the article “Wavelets and Subband Coding” by Martin Vetterli and Jelena Kovacevic, Prentiss Hall, 1995, which is hereby incorporated by reference. The exemplary embodiment illustrated in FIGS. 11 and 12 demonstrates an implementation based on wavelet transforms, but it will be appreciated that the present invention is not limited to such an embodiment.

FIG. 12 is a block diagram of a circuit for time decoding and recovery of a signal encoded in accordance with the circuit of FIG. 11. The circuit includes M TDMs 1220, 1225, 1230 corresponding to the M channels of filter-TEM channels in FIG. 11. Each TDM 1220, 1225, 1230 receives the time encoded trigger information (t_(k) ^(m),δ^(m)(t_(k) ^(m))) kεZ, from the corresponding channel of the encoder circuit at inputs 1205, 1210 and 1215, respectively. The design and operation of a TDM is described above in connection with FIGS. 5 and 6. Each of the M which is comparable to that of traditional amplitude encoding when the sampling occurs at or above the Nyquist sampling raate. The present methods are particularly well suited for low voltage analog applications where amplitude sampling may be limited by the small voltage increments represented by catch bit when high resolution sampling is required with only a limited voltage supply. The ability to accurately encode analog signals using limited supply voltage makes the present circuits and methods well suited to use in nano-scale integration applications. By using a multichannel topology, the advantages of the use of asynchronous time encoding and decoding are enhanced. Significant reductions in the average spike rate of a sampled system are derived by the use of multichannel approach described herein.

Although the present invention has been described in connection with specific exemplary exemplary embodiments, it should be understood that various changes, substitutions and alterations can be made to the disclosed embodiments without departing from the spirit and scope of the invention as set forth in the appended claims. TDMs has an output coupled to a corresponding filter, one of M elements 1235, 1240, 1245. The outputs of the filter elements 1235, 1240, 1245 are then coupled to a corresponding group of M multipliers 1250, 1255, 1260. The output of the multipliers are then coupled to a summing circuit 1270.

The multipliers also receive a scaling factor input s_(m) to rescale the amplitude of the processed signals. The TDMs 1220, 1225, 1230 receive the sets of trigger times encoded from the output of the corresponding TEMs and recover the respective continuous filtered waveforms (x^(m)(t)) for each of the M channels. After the continuous filtered waveforms for each channel are recovered, the signals x^(m)(t) are passed through corresponding filters and multipliers in each of the M channels in order to recover and scale the signals which are applied to the summing circuit 1270 to combine the signals from the M channels and recover f(t).

In a wavelet transform embodiment the recovery operator can be described using wavelet frames as follows:

The variable f will denote the stimulus and h the mother wavelet. The variable s denotes the dilation factor. Both f and h have finite energy. Three operators are then defined as follows: Dilation Operator (D _(s) h)(u)=|s| ^(1/2) h(su)  (15) Translation Operator (τ_(t) h)(u)=h(u−t)  (16) Involution Operator {tilde over (h)}(u)={tilde over (h)}(−u)  (17) where the bar stands for the complex conjugate. The continuous wavelet transform (CWT) is given by:

$\begin{matrix} \begin{matrix} {{{\left( {W_{\; h}f} \right)\left( {t,s} \right)} = {< f}},{{\tau_{t}D_{s}h}>={{s}^{1/2}{\int_{R}{{f\ (u)}\overset{\_}{h}\left( {s\left( {u - t} \right)} \right){\mathbb{d}u}}}}}} \\ {= {{{s}^{1/2}{\int_{R}{{f(u)}{\overset{\sim}{h}\left( {s\left( {t - u} \right)} \right)}\ {\mathbb{d}u}}}} = {\left( {f*D_{s}\overset{\sim}{h}} \right){(t).}}}} \end{matrix} & (18) \end{matrix}$

For practical implementations, it is preferable to sample the time-scale plane. A class of sampling sets that facilitates a simple filter bank implementation is given by: Γ={t,s_(m)}_(m=1, 2, . . . , M)  (19) and the analysis filter bank is specified by: (W _(h) f)(t,s _(m))=<f, π _(t) D _(s) _(m) h>=(f*D _(s) _(m) {tilde over (h)})(t)=x ^(m)(t).  (20) The mother wavelet h, the number of filters M, and the scales {s_(m)} determine the frequency ranges over which the analysis filter bank operates.

With “hat” denoting the Fourier transform, it is noted that (x ^(m))^(ω)=({circumflex over (f)}·D _(s) _(m) ⁻¹ {circumflex over ( h )(ω)  (21)

By multiplying both sides with s_(m)·D_(s) _(m) ⁻¹ĥ we obtain:

$\begin{matrix} \begin{matrix} {{\sum\limits_{m = 1}^{M}{{s_{m} \cdot \left( x^{m} \right)^{⩓}}(\omega)\left( {D_{s_{m}^{- 1}}\hat{h}} \right)(\omega)}} = {\sum\limits_{m = 1}^{M}{{s_{m} \cdot \left( {{\hat{f} \cdot D_{s_{m}^{- 1}}}\overset{\_}{\hat{h}}} \right)}(\omega)\left( {D_{s_{m}^{- 1}}\hat{h}} \right)(\omega)}}} \\ {= {{\hat{f}(\omega)}{\sum\limits_{m = 1}^{M}\;{s_{m} \cdot {{D_{s_{m}^{- 1}}{\hat{h}(\omega)}}}^{2}}}}} \end{matrix} & (22) \end{matrix}$ It is assumed that

$\begin{matrix} {C = {{\sum\limits_{m = 1}^{M}\;{{\hat{h}\left( {s_{m}^{- 1}\omega} \right)}}^{2}} > 0.}} & (23) \end{matrix}$ for all ωε[−Ω,Ω]. Denoting by the inverse Fourier transform of C⁻¹(ω), i.e., c(t)=(C⁻¹)(t) for all t, tε

 as c(t), tε

, we have the following:

Proposition. The stimulus f(t) can be perfectly recovered from (x^(m)(t))_(tε)

, m=1, 2, . . . , M and

$\begin{matrix} {{{f(t)} = {\left( {\sum\limits_{m = 1}^{M}{{s_{m\;} \cdot \left( {x^{m}*D_{s_{m}}h} \right)}*c}} \right)(t)}}{{provided}\mspace{14mu}{that}}} & (24) \\ {C = {{\sum\limits_{m = 1}^{M}{{\hat{h}\left( {s_{m}^{- 1}\omega} \right)}}^{2}} > 0.}} & (25) \end{matrix}$ for all ωε[−Ω,Ω].

The present invention provides systems and methods for digitizing an analog signal using time encoding rather than amplitude encoding of the signal. The present methods also provide for recovery of the time encoded signal with an error which is comparable to that of traditional amplitude encoding when the sampling occurs at or above the Nyquist sampling rate. The present methods are particularly well suited for low voltage analog applications where amplitude sampling may be limited by the small voltage increments represented by each bit when high resolution sampling is required with only a limited voltage supply. The ability to accurately encode analog signals using limited supply voltages makes the present circuits and methods well suited to use in nano-scale integration applications. By using a multichannel topology, the advantages of the use of asynchronous time encoding and decoding are enhanced. Significant reductions in the average spike rate of a sampled system are derived by the use of the multichannel approach described herein.

Although the present invention has been described in connection with specific exemplary embodiments, it should be understood that various changes, substitutions and alterations can be made to the disclosed embodiments without departing from the spirit and scope of the invention as set forth in the appended claims. 

1. A multichannel TEM encoder circuit comprising: a filter bank having an input bandwidth and comprising a plurality (M) of filter elements, the M filter elements being selected such that the response of the M filters are at least adjacent and collectively at least fully span the bandwidth of the filter bank; and a plurality (M) of time encoding machines (TEMs), each of the M TEMs being operatively coupled to a corresponding one of the M filter elements.
 2. The multichannel TEM encoder circuit of claim 1, wherein the filter bank is formed using a wavelet transform construction.
 3. The multichannel TEM encoder circuit of claim 2, wherein the M filter elements are selected to have a center frequency and bandwidth such that at least a portion of the responses overlap.
 4. The multichannel TEM encoder circuit of claim 1, wherein the filter bank is formed using a Gabor transform construction.
 5. The multichannel TEM encoder circuit of claim 1, wherein the TEMs take the form of an integrate and fire neuron circuit.
 6. The multichannel TEM encoder circuit of claim 1, wherein the TEMs take the form of an asynchronous sigma delta modulator.
 7. A decoder circuit for decoding a signal encoded by a multichannel TEM encoder comprising: a bank of M time decoding machines (TDMs), each of the M TDMs having an input for receiving a set of asynchronous trigger values representing at least a portion of a signal to be decoded; a bank of M filter elements, each of the M filter elements being operatively coupled to a corresponding one of the M TDMs, the bank of M TDMs and M filter elements having an overall response selected to at least substantially invert the encoding process of the multichannel TEM encoder used to encode the signal.
 8. A method of encoding a signal using a plurality of time encoding machines (TEMs), comprising: applying a band limited signal to the input of a bank of a plurality of (M) filter elements, the M filter elements being selected to collectively at least fully span the bandwidth of the band limited signal; and providing the output of each of the M filter elements to a corresponding one of M TEMs, each of the M TEMs having an output set of asynchronous trigger values representing at least a portion of the bandlimited signal.
 9. A method of recovering an input signal from an output of a multichannel Time Encoding Machine (TEM) encoder, each of the TEMs providing a corresponding binary asynchronous time sequence at least partially representing a bounded input signal, comprising: receiving M set of asynchronous times sequence output data, for each set of output data: measuring the times of transitions of the corresponding TEM output signal; generating a set of weighted impulse functions based upon the measured times of the zero crossings; and applying the set of weighted impulse functions to an impulse response filter to recover at least a portion of input signal.
 10. A method of recovering an input signal from the output signal of a multichannel Time Encoding Machine encoder according to claim 9, wherein consecutive zero crossings of a corresponding TEM define time intervals and wherein the weighted impulse functions have measured time values that are centered on the time intervals of the TEM output signal.
 11. A method of recovering an input signal from the output signal of a multichannel Time Encoding Machine encoder according to claim 9, wherein the weighted impulse functions have a weighting value determined by the measured time values of at least two zero crossings and at least one property of a corresponding TEM.
 12. The method of recovering an input signal from the output signal of a multichannel Time Encoding Machine encoder according to claim 11, wherein the weighted impulse functions have weighting value coefficients c_(k) which can be expressed in matrix form as a column vector, c: c =(G +λ*I)⁺ q where λ is a constant, I is an identity matrix and q is a column vector and ∫_(tk)^(t_(k + 1))x(u) 𝕕u = (−1)^(k)[−b(t_(k + 1) − t_(k)) + 2 κ δ] q = [∫_(l_(k))^(t_(k + 1))x(u) 𝕕u]  and  G = [∫_(t_(l))^(t_(l + 1))g(u − s_(k)) 𝕕u]  and  where  G⁺ denotes the pseudo-inverse of matrix G.
 13. The method of recovering an input signal from the output signal of a multichannel Time Encoding Machine (TEM) encoder according to claim 9, wherein each TEM is characterized at least in part by the relationship δ<(π/Ω)(b−c)/κ), where δ represents a hysteresis value of the TEM, b represents an output voltage of the TEM, κ represents an integration constant of the TEM, Ω represents the bandwidth of the input signal x(t) and c represents the maximum amplitude bound of the input signal, and wherein the sequence of transition times generated by the TEM can be expressed as ∫_(tk)^(k + 1)x(u) 𝕕u = (−1)^(k)[−b(t_(k + 1) − t_(k)) + 2κδ]. 